home *** CD-ROM | disk | FTP | other *** search
/ 100 Plus Great Games 2 / 100PLUSV2.BIN / games / ClassDay.dxr / Internal_5_stock cards.ls < prev    next >
Encoding:
Text File  |  2002-01-25  |  1.9 KB  |  59 lines

  1. property spriteNum, undercard, location, wastepile
  2. global stock, foundation, tableau, equal, currentsel, godlist, waste, getlist, points, redeals
  3.  
  4. on beginSprite me
  5.   stock = new(script("card pile"))
  6.   stock.cards = shuffle()
  7.   redeals = 0
  8.   wastepile = sprite(12)
  9. end
  10.  
  11. on shuffle me
  12.   ranks = ["ace", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "jack", "queen", "king"]
  13.   suits = ["hearts", "diamonds", "clubs", "spades"]
  14.   unshuffledCards = []
  15.   shuffledCards = []
  16.   repeat with er = 1 to 2
  17.     repeat with rank in ranks
  18.       repeat with suit in suits
  19.         unshuffledCards.add([#rank: rank, #suit: suit])
  20.       end repeat
  21.     end repeat
  22.     repeat while unshuffledCards.count > 0
  23.       shuffledCards.add(unshuffledCards[random(unshuffledCards.count)])
  24.       unshuffledCards.deleteOne(shuffledCards[shuffledCards.count])
  25.     end repeat
  26.   end repeat
  27.   return shuffledCards
  28. end
  29.  
  30. on mouseDown me
  31.   if sprite(spriteNum).member.name = "backofcard" then
  32.     puppetSound(3, member("deal card", "100GPak Generic SFX"))
  33.     wastepile.member = member(stock.cards[1].rank & "_" & stock.cards[1].suit, "playing cards")
  34.     waste.addCard(12)
  35.     stock.cards.deleteAt(1)
  36.     if stock.cards.count = 0 then
  37.       if redeals < 1 then
  38.         sprite(spriteNum).member = member("replenish", "playing cards")
  39.       else
  40.         sprite(spriteNum).member = member("empty", "playing cards")
  41.         checklose()
  42.       end if
  43.     end if
  44.   else
  45.     if sprite(spriteNum).member.name = "replenish" then
  46.       stock.cards = reshuffle(waste.cards)
  47.       waste.cards.deleteAll()
  48.       sprite(12).member = member("empty", "playing cards")
  49.       sprite(12).undercard.member = member("empty", "playing cards")
  50.       sprite(spriteNum).member = member("backofcard", "playing cards")
  51.       redeals = redeals + 1
  52.     else
  53.       if sprite(spriteNum).member.name = "empty" then
  54.         nothing()
  55.       end if
  56.     end if
  57.   end if
  58. end
  59.